Android ContentProvider 与 ORMLite
全部标签 我正在尝试使用robolectric测试ORMLiteDAO,但数据库行为与在我的android应用程序中使用时的行为不同。我的DAO在android应用程序上运行得非常好。阅读关于robolectric阴影和调试代码,我遇到了ShadowSQLiteOpenHelper(代码here)。有谁知道这个Shadow是否足以测试ormlitedaos?或者我必须创建自己的影子才能实现?这里有任何线索/提示/建议/示例吗?提前致谢。额外信息:测试方法:@TestpublicvoidbasicTest()throwsSQLException{assertNotNull(randomString
我已经在我的android项目中设置了一个ORMLite数据库。我有一个名为RbFehler的类,其中包含以下字段:@DatabaseField(columnName="DATUM_LA",dataType=DataType.DATE_STRING,format="yyyy-MM-ddHH:mm:ss")publicDatedatum_la;我有一些逻辑可以从存储SQL插入语句的文本文件中导入数据。一行看起来像这样:INSERTINTORbFehler(KATALOGART,SYST,SUBSYST,KOMP,BAUTEIL,BEZ,PSYST,PSUBSYST,PKOMP,PBAUT
我有相对较小的H2数据库。我预计不会超过100个条目,即使这样我也觉得太过分了。我有一个带有一些控件的ListView,并使用ArrayAdapter调用QueryAll()来填充数据。它工作得很好,因为我可以在按下按钮时修改内存中数组中的数据,然后将结果写入数据库而无需重新加载它。但是初始加载出奇的慢我想知道我是否应该使用CursorAdapter,因为它似乎更适合问题或编写自定义适配器以使用DAO迭代器。使用Cursor或自定义适配器是否会提高性能?在我看来,自定义适配器应该提供最佳性能。 最佳答案 CursorAdapter在
我的模型类中有List_photo_array;因为我可以在String类上添加注释,是否可以使用ormLite来持久化它? 最佳答案 sinceIcanputanotationonStringClassisitawaytopersistitusingormLite?您将必须创建一个包装String的实体。像这样的东西:@DatabaseTablepublicclassPhoto{@DatabaseField(generatedId=true)privateintid;@DatabaseFieldprivateStringphoto
我想使用ORMLite,但我不喜欢为每个Activity管理1个数据库助手。在整个应用程序生命周期中拥有一个不是更好吗?直到现在我一直在使用greendao,它没有这个问题。我想实现它,但是我找不到任何合适的方法来在销毁应用程序时正确释放数据库助手(我可以很容易地在应用程序的onCreate中打开它),因为没有应用程序的onDestroy()方法。有没有人有办法做到这一点? 最佳答案 Ormlite有OrmLiteBaseActivity它可以自己管理与Activity周期的连接。你所有的Activity都应该扩展这个类,你不需要关
我在为我的项目启用proguard时遇到问题:java.sql.SQLException:无法删除类adc,因为它没有定义id字段exepction中提到的adc类如下:@DatabaseTable(tableName="zaplanowane_zlecenie")publicclassZaplanowaneZlecenie{@DatabaseField(generatedId=true)privateUUIDmZaplanowaneZlecenieId;@DatabaseField(columnName="data")privateDateTimemZaplanowanaData;@
我正在使用android和ormlite。我在初始化ForeignCollection时遇到问题。我找到这个,初始化它:dao.getEmptyForeignCollection()但对于dao,我需要DatabaseHelper,对于databasehelper,我需要applicationContext,但在实体中我没有上下文。还有其他选择吗?这就是代码,它是一对一的关系。类(class)团队:@DatabaseField(canBeNull=true,foreign=true)privateClubclub;类(class)俱乐部:@DatabaseField(canBeNull
我有一个@Singleton类,我在其中注入(inject)了一个OrmLiteSqliteOpenHelper实例。我真的需要调用OpenHelperManager.releaseHelper()吗?如果我这样做,应该在哪里以及如何完成,因为该类没有扩展任何我可以到达onDestroy的Android基类? 最佳答案 有一个ORMLite演示此调用的示例Android项目HelloAndroidNoBase.我会检查一下。主要Activity的相关代码部分包含在下面。您需要在每个Activity或其他使用数据库的类中包含此类代码。
编辑:错误发生在ORMLite版本4.48中。我回滚到4.45,错误不再发生。我已经按照网站上的说明使用适用于Android的ORMLite实现了一个数据库。但是,每当我尝试写入数据库时,都会出现异常:10-2415:15:04.600:E/AndroidRuntime(12057):FATALEXCEPTION:IntentService[com.mypackage.instagram.UpdateInstagramPhotosService]10-2415:15:04.600:E/AndroidRuntime(12057):java.lang.ExceptionInInitia
我正在使用ormlite.android.4.31.jar我有典型的DatabaseHelperpublicclassDatabaseHelperextendsOrmLiteSqliteOpenHelper{privatestaticfinalStringDATABASE_NAME="realestate.db";privatestaticfinalintDATABASE_VERSION=1;privateDaokrajDao;publicDatabaseHelper(Contextcontext){super(context,DATABASE_NAME,null,DATABASE_V